package com.example.demo.service;

import com.example.demo.entity.*;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * 工业指标
 */
@Service
public interface IndustrialIndicatorsService {

    /**
     * 分区镇规上工业总产值
     * @param year 年份
     * @param month 月份
     * @return List<SubDistrictTownIndustry>
     */
    List<SubDistrictTownIndustry> getSubDistrictTownIndustry(int year, int month);

    /**
     * 工业总产值
     * 规上工业总产值
     * 综合能源消费量（吨标准煤）
     * 规上工业用电量（万千瓦时）
     * 万元产值能耗（吨标准煤/万元）
     * @param year 年份
     * @param indicators 指标
     * @return List<IndustrialEconomicIndicators>
     */
    List<IndustrialEconomicIndicators> getIndustrialIndicatorsByIndicators(int year,String indicators);

    /**
     * 高新技术产业产值
     * @param year 年份
     * @return List<HighTechIndustry>
     */
    List<HighTechIndustry> getHighTechIndustry(int year);

    /**
     * 头标：当月及当月累计
     * @param year 年份，month 月份, indicators 指标
     *@return IndustrialEconomicIndicators
     */
    IndustrialEconomicIndicators getMonthProduct(int year, int month, String indicators);

    /**
     * 规模以上工业分行业产值
     * @param year 年份，month 月份
     *@return List<SectorProduct>
     */
    List<SectorProduct> getSectorProduct(int year, int month);


    /**
     * 重点工业企业产值完成情况（同一集团企业）
     * @param year 年份
     * @param month 月份
     * @return List<KeyEnterprisesProduct>
     */
    List<KeyEnterprisesProduct> getKeyEnterprisesProductByGroup(int year, int month);

    /**
     * 重点工业企业产值完成情况（同一法人企业）
     * @param year 年份
     * @param month 月份
     * @return List<KeyEnterprisesProduct>
     */
    List<KeyEnterprisesProduct> getKeyEnterprisesProductByJudicialPerson(int year, int month);

    /**
     * 重点工业企业产值完成情况(单独企业)
     * @param year 年份
     * @param month 月份
     * @return List<KeyEnterprisesProduct>
     */
    List<KeyEnterprisesProduct> getKeyEnterprisesProductAlone(int year, int month);
}
